package com.haozi.dto;

import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * @author zyh
 * @version 1.0
 * @date 2022/4/27 12:34 下午
 */
@Data
public class BaiduResult implements Serializable {


    @com.alibaba.fastjson.annotation.JSONField(name = "QueryID")
    private String QueryID;
    @com.alibaba.fastjson.annotation.JSONField(name = "ResultCode")
    private String ResultCode;
    @com.alibaba.fastjson.annotation.JSONField(name = "Result")
    private ResultDTO Result;

    @Data
    public static class ResultDTO implements Serializable {
        @com.alibaba.fastjson.annotation.JSONField(name = "pankouinfos")
        private PankouinfosDTO pankouinfos;
        @com.alibaba.fastjson.annotation.JSONField(name = "basicinfos")
        private BasicinfosDTO basicinfos;
        @com.alibaba.fastjson.annotation.JSONField(name = "update")
        private UpdateDTO update;
        @com.alibaba.fastjson.annotation.JSONField(name = "provider")
        private String provider;
        @com.alibaba.fastjson.annotation.JSONField(name = "cur")
        private CurDTO cur;
        @com.alibaba.fastjson.annotation.JSONField(name = "priceinfo")
        private List<PriceinfoDTO> priceinfo;
        @com.alibaba.fastjson.annotation.JSONField(name = "askinfos")
        private List<AskinfosDTO> askinfos;
        @com.alibaba.fastjson.annotation.JSONField(name = "buyinfos")
        private List<BuyinfosDTO> buyinfos;
        @com.alibaba.fastjson.annotation.JSONField(name = "detailinfos")
        private List<DetailinfosDTO> detailinfos;
        @com.alibaba.fastjson.annotation.JSONField(name = "adr_info")
        private List<?> adrInfo;

        @Data
        public static class PankouinfosDTO implements Serializable {
            @com.alibaba.fastjson.annotation.JSONField(name = "indicatorTitle")
            private String indicatorTitle;
            @com.alibaba.fastjson.annotation.JSONField(name = "indicatorUrl")
            private String indicatorUrl;
            @com.alibaba.fastjson.annotation.JSONField(name = "origin_pankou")
            private OriginPankouDTO originPankou;
            @com.alibaba.fastjson.annotation.JSONField(name = "list")
            private List<ListDTO> list;

            @Data
            public static class OriginPankouDTO implements Serializable {
                @com.alibaba.fastjson.annotation.JSONField(name = "open")
                private String open;
                @com.alibaba.fastjson.annotation.JSONField(name = "preClose")
                private String preClose;
                @com.alibaba.fastjson.annotation.JSONField(name = "volume")
                private String volume;
                @com.alibaba.fastjson.annotation.JSONField(name = "turnoverRatio")
                private String turnoverRatio;
                @com.alibaba.fastjson.annotation.JSONField(name = "high")
                private String high;
                @com.alibaba.fastjson.annotation.JSONField(name = "low")
                private String low;
                @com.alibaba.fastjson.annotation.JSONField(name = "limitUp")
                private String limitUp;
                @com.alibaba.fastjson.annotation.JSONField(name = "limitDown")
                private String limitDown;
                @com.alibaba.fastjson.annotation.JSONField(name = "inside")
                private String inside;
                @com.alibaba.fastjson.annotation.JSONField(name = "outside")
                private String outside;
                @com.alibaba.fastjson.annotation.JSONField(name = "amount")
                private String amount;
                @com.alibaba.fastjson.annotation.JSONField(name = "amplitudeRatio")
                private String amplitudeRatio;
                @com.alibaba.fastjson.annotation.JSONField(name = "weibiRatio")
                private String weibiRatio;
                @com.alibaba.fastjson.annotation.JSONField(name = "volumeRatio")
                private String volumeRatio;
                @com.alibaba.fastjson.annotation.JSONField(name = "currencyValue")
                private String currencyValue;
                @com.alibaba.fastjson.annotation.JSONField(name = "capitalization")
                private String capitalization;
                @com.alibaba.fastjson.annotation.JSONField(name = "peratio")
                private String peratio;
                @com.alibaba.fastjson.annotation.JSONField(name = "lyr")
                private String lyr;
                @com.alibaba.fastjson.annotation.JSONField(name = "bvRatio")
                private String bvRatio;
                @com.alibaba.fastjson.annotation.JSONField(name = "perShareEarn")
                private String perShareEarn;
                @com.alibaba.fastjson.annotation.JSONField(name = "netAssetsPerShare")
                private String netAssetsPerShare;
                @com.alibaba.fastjson.annotation.JSONField(name = "circulatingCapital")
                private String circulatingCapital;
                @com.alibaba.fastjson.annotation.JSONField(name = "totalShareCapital")
                private String totalShareCapital;
                @com.alibaba.fastjson.annotation.JSONField(name = "priceLimit")
                private String priceLimit;
                @com.alibaba.fastjson.annotation.JSONField(name = "w52_low")
                private String w52Low;
                @com.alibaba.fastjson.annotation.JSONField(name = "w52_high")
                private String w52High;
                @com.alibaba.fastjson.annotation.JSONField(name = "expire_date")
                private String expireDate;
                @com.alibaba.fastjson.annotation.JSONField(name = "currentPrice")
                private String currentPrice;
            }

            @Data
            public static class ListDTO implements Serializable {
                @com.alibaba.fastjson.annotation.JSONField(name = "ename")
                private String ename;
                @com.alibaba.fastjson.annotation.JSONField(name = "name")
                private String name;
                @com.alibaba.fastjson.annotation.JSONField(name = "value")
                private String value;
                @com.alibaba.fastjson.annotation.JSONField(name = "status")
                private String status;
                @com.alibaba.fastjson.annotation.JSONField(name = "helpIcon")
                private String helpIcon;
            }
        }

        @Data
        public static class BasicinfosDTO implements Serializable {
            @com.alibaba.fastjson.annotation.JSONField(name = "exchange")
            private String exchange;
            @com.alibaba.fastjson.annotation.JSONField(name = "code")
            private String code;
            @com.alibaba.fastjson.annotation.JSONField(name = "name")
            private String name;
            @com.alibaba.fastjson.annotation.JSONField(name = "stockStatus")
            private String stockStatus;
            @com.alibaba.fastjson.annotation.JSONField(name = "stock_market_code")
            private String stockMarketCode;
        }

        @Data
        public static class UpdateDTO implements Serializable {
            @com.alibaba.fastjson.annotation.JSONField(name = "text")
            private String text;
            @com.alibaba.fastjson.annotation.JSONField(name = "time")
            private String time;
            @com.alibaba.fastjson.annotation.JSONField(name = "realUpdateTime")
            private String realUpdateTime;
            @com.alibaba.fastjson.annotation.JSONField(name = "timezone")
            private String timezone;
            @com.alibaba.fastjson.annotation.JSONField(name = "shortZone")
            private String shortZone;
            @com.alibaba.fastjson.annotation.JSONField(name = "time_diff")
            private String timeDiff;
            @com.alibaba.fastjson.annotation.JSONField(name = "stockStatus")
            private String stockStatus;
        }

        @Data
        public static class CurDTO implements Serializable {
            @com.alibaba.fastjson.annotation.JSONField(name = "time")
            private String time;
            @com.alibaba.fastjson.annotation.JSONField(name = "price")
            private String price;
            @com.alibaba.fastjson.annotation.JSONField(name = "ratio")
            private String ratio;
            @com.alibaba.fastjson.annotation.JSONField(name = "increase")
            private String increase;
            @com.alibaba.fastjson.annotation.JSONField(name = "volume")
            private String volume;
            @com.alibaba.fastjson.annotation.JSONField(name = "avgPrice")
            private String avgPrice;
            @com.alibaba.fastjson.annotation.JSONField(name = "amount")
            private String amount;
            @com.alibaba.fastjson.annotation.JSONField(name = "timeKey")
            private String timeKey;
            @com.alibaba.fastjson.annotation.JSONField(name = "datetime")
            private String datetime;
            @com.alibaba.fastjson.annotation.JSONField(name = "show")
            private String show;
        }

        @Data
        public static class PriceinfoDTO implements Serializable {
            @com.alibaba.fastjson.annotation.JSONField(name = "time")
            private String time;
            @com.alibaba.fastjson.annotation.JSONField(name = "price")
            private String price;
            @com.alibaba.fastjson.annotation.JSONField(name = "ratio")
            private String ratio;
            @com.alibaba.fastjson.annotation.JSONField(name = "increase")
            private String increase;
            @com.alibaba.fastjson.annotation.JSONField(name = "volume")
            private String volume;
            @com.alibaba.fastjson.annotation.JSONField(name = "avgPrice")
            private String avgPrice;
            @com.alibaba.fastjson.annotation.JSONField(name = "amount")
            private String amount;
            @com.alibaba.fastjson.annotation.JSONField(name = "timeKey")
            private String timeKey;
            @com.alibaba.fastjson.annotation.JSONField(name = "datetime")
            private String datetime;
            @com.alibaba.fastjson.annotation.JSONField(name = "show")
            private String show;
        }

        @Data
        public static class AskinfosDTO implements Serializable {
            @com.alibaba.fastjson.annotation.JSONField(name = "askprice")
            private String askprice;
            @com.alibaba.fastjson.annotation.JSONField(name = "askvolume")
            private String askvolume;
        }

        @Data
        public static class BuyinfosDTO implements Serializable {
            @com.alibaba.fastjson.annotation.JSONField(name = "bidprice")
            private String bidprice;
            @com.alibaba.fastjson.annotation.JSONField(name = "bidvolume")
            private String bidvolume;
        }

        @Data
        public static class DetailinfosDTO implements Serializable {
            @com.alibaba.fastjson.annotation.JSONField(name = "time")
            private String time;
            @com.alibaba.fastjson.annotation.JSONField(name = "volume")
            private String volume;
            @com.alibaba.fastjson.annotation.JSONField(name = "price")
            private String price;
            @com.alibaba.fastjson.annotation.JSONField(name = "type")
            private String type;
            @com.alibaba.fastjson.annotation.JSONField(name = "bsFlag")
            private String bsFlag;
        }
    }
}
